package com.ssish.saas.eccs.mapper;

import com.ssish.saas.eccs.model.Provider;
import com.ssish.saas.eccs.model.ProviderExample;
import com.ssish.saas.eccs.model.ProviderWithBLOBs;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

public interface ProviderMapper {
    long countByExample(ProviderExample example);

    int deleteByExample(ProviderExample example);

    @Delete({
        "delete from PROVIDER",
        "where PROVIDER_CODE = #{providerCode,jdbcType=CHAR}"
    })
    int deleteByPrimaryKey(String providerCode);

    @Insert({
        "insert into PROVIDER (PROVIDER_CODE, USER_CODE, ",
        "TM_CLAIMCAT, CORP_CODE, ",
        "PAYOR_CODE, PROVIDER_TYPE, ",
        "SHORT_NAME, LONG_NAME, ",
        "ADDRESS, POSTCODE, ",
        "CITY, STATE, COUNTRY, ",
        "TEL_NO1, TEL_NO2, ",
        "ADMIN_NAME, FAX_NO, ",
        "EMAIL, EDI_ADDRESS, ",
        "ACTIVE_FLAG, BUSINESS_HOUR1, ",
        "BUSINESS_HOUR2, EDI_CLAIMS, ",
        "COMM_CODE, INVOICE_FORMAT, ",
        "PARTICIPATE_FLAG, BANK_ID, ",
        "BANK_CODE, BANK_AC_NO, ",
        "LASTEDIT_DATE, MERCHANT_CODE, ",
        "BANK_AC_NAME, REMARKS, ",
        "BANK_NAME, BANK_ADDRESS, ",
        "BANK_STATE, BANK_POSCODE, ",
        "BANK_CITY, TEST_DATE, ",
        "TRAINING_BY, HARD_COPY, ",
        "TRAINING, TEST_CARD, ACTIVATION_DATE, ",
        "CANCELLATION_DATE, BILLING_ADDRESS, ",
        "BILLING_POSTCODE, BILLING_CITY, ",
        "BILLING_STATE, DBCD, ",
        "DELIVERY_MODE, PROVIDER_REFNO, ",
        "ENGLISH_NAME, ENGLISH_ADDR, ",
        "DISCRT, PANEL_STARTDT, ",
        "PANEL_ENDDT, DIY_NOTE, ",
        "SELFPAID_COLLECTION, CURRCD, ",
        "PAYMENT_MODE, PAYMENT_FREQUENCY, ",
        "PAYMENT_DAY, PROVIDER_CAT, ",
        "COVERAGE_PROVIDED, PROVIDER_SPECIALITY, ",
        "PROVIDER_LEVEL, NO_OF_BED, ",
        "MAPURL, FEE_CATG, ",
        "SOCIAL_MEDICAL_PANEL, ISSUE_INVOICE_UPON_DISCHARGE, ",
        "PANEL_CONTRACTING, BILL_CONSUMABLE, ",
        "GSTNO, BANK_BRANCH_CODE, ",
        "PROVIDER_TYPE_DISP, WEBSITE, ",
        "CRCD, SITEID, INSERT_BY, ",
        "INSERT_DATE, DIST, ",
        "DOCUMENT_RECEIVCED_TYPE, DETAILS_DISP, ",
        "ENGLISH_DETAILS_DISP)",
        "values (#{providerCode,jdbcType=CHAR}, #{userCode,jdbcType=VARCHAR}, ",
        "#{tmClaimcat,jdbcType=CHAR}, #{corpCode,jdbcType=VARCHAR}, ",
        "#{payorCode,jdbcType=CHAR}, #{providerType,jdbcType=VARCHAR}, ",
        "#{shortName,jdbcType=OTHER}, #{longName,jdbcType=OTHER}, ",
        "#{address,jdbcType=OTHER}, #{postcode,jdbcType=VARCHAR}, ",
        "#{city,jdbcType=VARCHAR}, #{state,jdbcType=VARCHAR}, #{country,jdbcType=VARCHAR}, ",
        "#{telNo1,jdbcType=VARCHAR}, #{telNo2,jdbcType=VARCHAR}, ",
        "#{adminName,jdbcType=VARCHAR}, #{faxNo,jdbcType=VARCHAR}, ",
        "#{email,jdbcType=VARCHAR}, #{ediAddress,jdbcType=VARCHAR}, ",
        "#{activeFlag,jdbcType=CHAR}, #{businessHour1,jdbcType=VARCHAR}, ",
        "#{businessHour2,jdbcType=VARCHAR}, #{ediClaims,jdbcType=CHAR}, ",
        "#{commCode,jdbcType=CHAR}, #{invoiceFormat,jdbcType=DECIMAL}, ",
        "#{participateFlag,jdbcType=CHAR}, #{bankId,jdbcType=DECIMAL}, ",
        "#{bankCode,jdbcType=VARCHAR}, #{bankAcNo,jdbcType=VARCHAR}, ",
        "#{lasteditDate,jdbcType=TIMESTAMP}, #{merchantCode,jdbcType=VARCHAR}, ",
        "#{bankAcName,jdbcType=OTHER}, #{remarks,jdbcType=OTHER}, ",
        "#{bankName,jdbcType=OTHER}, #{bankAddress,jdbcType=OTHER}, ",
        "#{bankState,jdbcType=OTHER}, #{bankPoscode,jdbcType=VARCHAR}, ",
        "#{bankCity,jdbcType=OTHER}, #{testDate,jdbcType=TIMESTAMP}, ",
        "#{trainingBy,jdbcType=CHAR}, #{hardCopy,jdbcType=CHAR}, ",
        "#{training,jdbcType=CHAR}, #{testCard,jdbcType=CHAR}, #{activationDate,jdbcType=TIMESTAMP}, ",
        "#{cancellationDate,jdbcType=TIMESTAMP}, #{billingAddress,jdbcType=VARCHAR}, ",
        "#{billingPostcode,jdbcType=VARCHAR}, #{billingCity,jdbcType=VARCHAR}, ",
        "#{billingState,jdbcType=VARCHAR}, #{dbcd,jdbcType=VARCHAR}, ",
        "#{deliveryMode,jdbcType=VARCHAR}, #{providerRefno,jdbcType=VARCHAR}, ",
        "#{englishName,jdbcType=VARCHAR}, #{englishAddr,jdbcType=VARCHAR}, ",
        "#{discrt,jdbcType=DECIMAL}, #{panelStartdt,jdbcType=TIMESTAMP}, ",
        "#{panelEnddt,jdbcType=TIMESTAMP}, #{diyNote,jdbcType=VARCHAR}, ",
        "#{selfpaidCollection,jdbcType=CHAR}, #{currcd,jdbcType=VARCHAR}, ",
        "#{paymentMode,jdbcType=VARCHAR}, #{paymentFrequency,jdbcType=VARCHAR}, ",
        "#{paymentDay,jdbcType=DECIMAL}, #{providerCat,jdbcType=VARCHAR}, ",
        "#{coverageProvided,jdbcType=VARCHAR}, #{providerSpeciality,jdbcType=VARCHAR}, ",
        "#{providerLevel,jdbcType=VARCHAR}, #{noOfBed,jdbcType=DECIMAL}, ",
        "#{mapurl,jdbcType=VARCHAR}, #{feeCatg,jdbcType=VARCHAR}, ",
        "#{socialMedicalPanel,jdbcType=CHAR}, #{issueInvoiceUponDischarge,jdbcType=CHAR}, ",
        "#{panelContracting,jdbcType=VARCHAR}, #{billConsumable,jdbcType=CHAR}, ",
        "#{gstno,jdbcType=VARCHAR}, #{bankBranchCode,jdbcType=VARCHAR}, ",
        "#{providerTypeDisp,jdbcType=VARCHAR}, #{website,jdbcType=VARCHAR}, ",
        "#{crcd,jdbcType=VARCHAR}, #{siteid,jdbcType=VARCHAR}, #{insertBy,jdbcType=VARCHAR}, ",
        "#{insertDate,jdbcType=TIMESTAMP}, #{dist,jdbcType=VARCHAR}, ",
        "#{documentReceivcedType,jdbcType=VARCHAR}, #{detailsDisp,jdbcType=CLOB}, ",
        "#{englishDetailsDisp,jdbcType=CLOB})"
    })
    int insert(ProviderWithBLOBs record);

    int insertSelective(ProviderWithBLOBs record);

    List<ProviderWithBLOBs> selectByExampleWithBLOBs(ProviderExample example);

    List<Provider> selectByExample(ProviderExample example);

    @Select({
        "select",
        "PROVIDER_CODE, USER_CODE, TM_CLAIMCAT, CORP_CODE, PAYOR_CODE, PROVIDER_TYPE, ",
        "SHORT_NAME, LONG_NAME, ADDRESS, POSTCODE, CITY, STATE, COUNTRY, TEL_NO1, TEL_NO2, ",
        "ADMIN_NAME, FAX_NO, EMAIL, EDI_ADDRESS, ACTIVE_FLAG, BUSINESS_HOUR1, BUSINESS_HOUR2, ",
        "EDI_CLAIMS, COMM_CODE, INVOICE_FORMAT, PARTICIPATE_FLAG, BANK_ID, BANK_CODE, ",
        "BANK_AC_NO, LASTEDIT_DATE, MERCHANT_CODE, BANK_AC_NAME, REMARKS, BANK_NAME, ",
        "BANK_ADDRESS, BANK_STATE, BANK_POSCODE, BANK_CITY, TEST_DATE, TRAINING_BY, HARD_COPY, ",
        "TRAINING, TEST_CARD, ACTIVATION_DATE, CANCELLATION_DATE, BILLING_ADDRESS, BILLING_POSTCODE, ",
        "BILLING_CITY, BILLING_STATE, DBCD, DELIVERY_MODE, PROVIDER_REFNO, ENGLISH_NAME, ",
        "ENGLISH_ADDR, DISCRT, PANEL_STARTDT, PANEL_ENDDT, DIY_NOTE, SELFPAID_COLLECTION, ",
        "CURRCD, PAYMENT_MODE, PAYMENT_FREQUENCY, PAYMENT_DAY, PROVIDER_CAT, COVERAGE_PROVIDED, ",
        "PROVIDER_SPECIALITY, PROVIDER_LEVEL, NO_OF_BED, MAPURL, FEE_CATG, SOCIAL_MEDICAL_PANEL, ",
        "ISSUE_INVOICE_UPON_DISCHARGE, PANEL_CONTRACTING, BILL_CONSUMABLE, GSTNO, BANK_BRANCH_CODE, ",
        "PROVIDER_TYPE_DISP, WEBSITE, CRCD, SITEID, INSERT_BY, INSERT_DATE, DIST, DOCUMENT_RECEIVCED_TYPE, ",
        "DETAILS_DISP, ENGLISH_DETAILS_DISP",
        "from PROVIDER",
        "where trim(PROVIDER_CODE) = #{providerCode,jdbcType=CHAR}"
    })
    @ResultMap("com.ssish.saas.eccs.mapper.ProviderMapper.ResultMapWithBLOBs")
    ProviderWithBLOBs selectByPrimaryKey(String providerCode);

    int updateByExampleSelective(@Param("record") ProviderWithBLOBs record, @Param("example") ProviderExample example);

    int updateByExampleWithBLOBs(@Param("record") ProviderWithBLOBs record, @Param("example") ProviderExample example);

    int updateByExample(@Param("record") Provider record, @Param("example") ProviderExample example);

    int updateByPrimaryKeySelective(ProviderWithBLOBs record);

    @Update({
        "update PROVIDER",
        "set USER_CODE = #{userCode,jdbcType=VARCHAR},",
          "TM_CLAIMCAT = #{tmClaimcat,jdbcType=CHAR},",
          "CORP_CODE = #{corpCode,jdbcType=VARCHAR},",
          "PAYOR_CODE = #{payorCode,jdbcType=CHAR},",
          "PROVIDER_TYPE = #{providerType,jdbcType=VARCHAR},",
          "SHORT_NAME = #{shortName,jdbcType=OTHER},",
          "LONG_NAME = #{longName,jdbcType=OTHER},",
          "ADDRESS = #{address,jdbcType=OTHER},",
          "POSTCODE = #{postcode,jdbcType=VARCHAR},",
          "CITY = #{city,jdbcType=VARCHAR},",
          "STATE = #{state,jdbcType=VARCHAR},",
          "COUNTRY = #{country,jdbcType=VARCHAR},",
          "TEL_NO1 = #{telNo1,jdbcType=VARCHAR},",
          "TEL_NO2 = #{telNo2,jdbcType=VARCHAR},",
          "ADMIN_NAME = #{adminName,jdbcType=VARCHAR},",
          "FAX_NO = #{faxNo,jdbcType=VARCHAR},",
          "EMAIL = #{email,jdbcType=VARCHAR},",
          "EDI_ADDRESS = #{ediAddress,jdbcType=VARCHAR},",
          "ACTIVE_FLAG = #{activeFlag,jdbcType=CHAR},",
          "BUSINESS_HOUR1 = #{businessHour1,jdbcType=VARCHAR},",
          "BUSINESS_HOUR2 = #{businessHour2,jdbcType=VARCHAR},",
          "EDI_CLAIMS = #{ediClaims,jdbcType=CHAR},",
          "COMM_CODE = #{commCode,jdbcType=CHAR},",
          "INVOICE_FORMAT = #{invoiceFormat,jdbcType=DECIMAL},",
          "PARTICIPATE_FLAG = #{participateFlag,jdbcType=CHAR},",
          "BANK_ID = #{bankId,jdbcType=DECIMAL},",
          "BANK_CODE = #{bankCode,jdbcType=VARCHAR},",
          "BANK_AC_NO = #{bankAcNo,jdbcType=VARCHAR},",
          "LASTEDIT_DATE = #{lasteditDate,jdbcType=TIMESTAMP},",
          "MERCHANT_CODE = #{merchantCode,jdbcType=VARCHAR},",
          "BANK_AC_NAME = #{bankAcName,jdbcType=OTHER},",
          "REMARKS = #{remarks,jdbcType=OTHER},",
          "BANK_NAME = #{bankName,jdbcType=OTHER},",
          "BANK_ADDRESS = #{bankAddress,jdbcType=OTHER},",
          "BANK_STATE = #{bankState,jdbcType=OTHER},",
          "BANK_POSCODE = #{bankPoscode,jdbcType=VARCHAR},",
          "BANK_CITY = #{bankCity,jdbcType=OTHER},",
          "TEST_DATE = #{testDate,jdbcType=TIMESTAMP},",
          "TRAINING_BY = #{trainingBy,jdbcType=CHAR},",
          "HARD_COPY = #{hardCopy,jdbcType=CHAR},",
          "TRAINING = #{training,jdbcType=CHAR},",
          "TEST_CARD = #{testCard,jdbcType=CHAR},",
          "ACTIVATION_DATE = #{activationDate,jdbcType=TIMESTAMP},",
          "CANCELLATION_DATE = #{cancellationDate,jdbcType=TIMESTAMP},",
          "BILLING_ADDRESS = #{billingAddress,jdbcType=VARCHAR},",
          "BILLING_POSTCODE = #{billingPostcode,jdbcType=VARCHAR},",
          "BILLING_CITY = #{billingCity,jdbcType=VARCHAR},",
          "BILLING_STATE = #{billingState,jdbcType=VARCHAR},",
          "DBCD = #{dbcd,jdbcType=VARCHAR},",
          "DELIVERY_MODE = #{deliveryMode,jdbcType=VARCHAR},",
          "PROVIDER_REFNO = #{providerRefno,jdbcType=VARCHAR},",
          "ENGLISH_NAME = #{englishName,jdbcType=VARCHAR},",
          "ENGLISH_ADDR = #{englishAddr,jdbcType=VARCHAR},",
          "DISCRT = #{discrt,jdbcType=DECIMAL},",
          "PANEL_STARTDT = #{panelStartdt,jdbcType=TIMESTAMP},",
          "PANEL_ENDDT = #{panelEnddt,jdbcType=TIMESTAMP},",
          "DIY_NOTE = #{diyNote,jdbcType=VARCHAR},",
          "SELFPAID_COLLECTION = #{selfpaidCollection,jdbcType=CHAR},",
          "CURRCD = #{currcd,jdbcType=VARCHAR},",
          "PAYMENT_MODE = #{paymentMode,jdbcType=VARCHAR},",
          "PAYMENT_FREQUENCY = #{paymentFrequency,jdbcType=VARCHAR},",
          "PAYMENT_DAY = #{paymentDay,jdbcType=DECIMAL},",
          "PROVIDER_CAT = #{providerCat,jdbcType=VARCHAR},",
          "COVERAGE_PROVIDED = #{coverageProvided,jdbcType=VARCHAR},",
          "PROVIDER_SPECIALITY = #{providerSpeciality,jdbcType=VARCHAR},",
          "PROVIDER_LEVEL = #{providerLevel,jdbcType=VARCHAR},",
          "NO_OF_BED = #{noOfBed,jdbcType=DECIMAL},",
          "MAPURL = #{mapurl,jdbcType=VARCHAR},",
          "FEE_CATG = #{feeCatg,jdbcType=VARCHAR},",
          "SOCIAL_MEDICAL_PANEL = #{socialMedicalPanel,jdbcType=CHAR},",
          "ISSUE_INVOICE_UPON_DISCHARGE = #{issueInvoiceUponDischarge,jdbcType=CHAR},",
          "PANEL_CONTRACTING = #{panelContracting,jdbcType=VARCHAR},",
          "BILL_CONSUMABLE = #{billConsumable,jdbcType=CHAR},",
          "GSTNO = #{gstno,jdbcType=VARCHAR},",
          "BANK_BRANCH_CODE = #{bankBranchCode,jdbcType=VARCHAR},",
          "PROVIDER_TYPE_DISP = #{providerTypeDisp,jdbcType=VARCHAR},",
          "WEBSITE = #{website,jdbcType=VARCHAR},",
          "CRCD = #{crcd,jdbcType=VARCHAR},",
          "SITEID = #{siteid,jdbcType=VARCHAR},",
          "INSERT_BY = #{insertBy,jdbcType=VARCHAR},",
          "INSERT_DATE = #{insertDate,jdbcType=TIMESTAMP},",
          "DIST = #{dist,jdbcType=VARCHAR},",
          "DOCUMENT_RECEIVCED_TYPE = #{documentReceivcedType,jdbcType=VARCHAR},",
          "DETAILS_DISP = #{detailsDisp,jdbcType=CLOB},",
          "ENGLISH_DETAILS_DISP = #{englishDetailsDisp,jdbcType=CLOB}",
        "where PROVIDER_CODE = #{providerCode,jdbcType=CHAR}"
    })
    int updateByPrimaryKeyWithBLOBs(ProviderWithBLOBs record);

    @Update({
        "update PROVIDER",
        "set USER_CODE = #{userCode,jdbcType=VARCHAR},",
          "TM_CLAIMCAT = #{tmClaimcat,jdbcType=CHAR},",
          "CORP_CODE = #{corpCode,jdbcType=VARCHAR},",
          "PAYOR_CODE = #{payorCode,jdbcType=CHAR},",
          "PROVIDER_TYPE = #{providerType,jdbcType=VARCHAR},",
          "SHORT_NAME = #{shortName,jdbcType=OTHER},",
          "LONG_NAME = #{longName,jdbcType=OTHER},",
          "ADDRESS = #{address,jdbcType=OTHER},",
          "POSTCODE = #{postcode,jdbcType=VARCHAR},",
          "CITY = #{city,jdbcType=VARCHAR},",
          "STATE = #{state,jdbcType=VARCHAR},",
          "COUNTRY = #{country,jdbcType=VARCHAR},",
          "TEL_NO1 = #{telNo1,jdbcType=VARCHAR},",
          "TEL_NO2 = #{telNo2,jdbcType=VARCHAR},",
          "ADMIN_NAME = #{adminName,jdbcType=VARCHAR},",
          "FAX_NO = #{faxNo,jdbcType=VARCHAR},",
          "EMAIL = #{email,jdbcType=VARCHAR},",
          "EDI_ADDRESS = #{ediAddress,jdbcType=VARCHAR},",
          "ACTIVE_FLAG = #{activeFlag,jdbcType=CHAR},",
          "BUSINESS_HOUR1 = #{businessHour1,jdbcType=VARCHAR},",
          "BUSINESS_HOUR2 = #{businessHour2,jdbcType=VARCHAR},",
          "EDI_CLAIMS = #{ediClaims,jdbcType=CHAR},",
          "COMM_CODE = #{commCode,jdbcType=CHAR},",
          "INVOICE_FORMAT = #{invoiceFormat,jdbcType=DECIMAL},",
          "PARTICIPATE_FLAG = #{participateFlag,jdbcType=CHAR},",
          "BANK_ID = #{bankId,jdbcType=DECIMAL},",
          "BANK_CODE = #{bankCode,jdbcType=VARCHAR},",
          "BANK_AC_NO = #{bankAcNo,jdbcType=VARCHAR},",
          "LASTEDIT_DATE = #{lasteditDate,jdbcType=TIMESTAMP},",
          "MERCHANT_CODE = #{merchantCode,jdbcType=VARCHAR},",
          "BANK_AC_NAME = #{bankAcName,jdbcType=OTHER},",
          "REMARKS = #{remarks,jdbcType=OTHER},",
          "BANK_NAME = #{bankName,jdbcType=OTHER},",
          "BANK_ADDRESS = #{bankAddress,jdbcType=OTHER},",
          "BANK_STATE = #{bankState,jdbcType=OTHER},",
          "BANK_POSCODE = #{bankPoscode,jdbcType=VARCHAR},",
          "BANK_CITY = #{bankCity,jdbcType=OTHER},",
          "TEST_DATE = #{testDate,jdbcType=TIMESTAMP},",
          "TRAINING_BY = #{trainingBy,jdbcType=CHAR},",
          "HARD_COPY = #{hardCopy,jdbcType=CHAR},",
          "TRAINING = #{training,jdbcType=CHAR},",
          "TEST_CARD = #{testCard,jdbcType=CHAR},",
          "ACTIVATION_DATE = #{activationDate,jdbcType=TIMESTAMP},",
          "CANCELLATION_DATE = #{cancellationDate,jdbcType=TIMESTAMP},",
          "BILLING_ADDRESS = #{billingAddress,jdbcType=VARCHAR},",
          "BILLING_POSTCODE = #{billingPostcode,jdbcType=VARCHAR},",
          "BILLING_CITY = #{billingCity,jdbcType=VARCHAR},",
          "BILLING_STATE = #{billingState,jdbcType=VARCHAR},",
          "DBCD = #{dbcd,jdbcType=VARCHAR},",
          "DELIVERY_MODE = #{deliveryMode,jdbcType=VARCHAR},",
          "PROVIDER_REFNO = #{providerRefno,jdbcType=VARCHAR},",
          "ENGLISH_NAME = #{englishName,jdbcType=VARCHAR},",
          "ENGLISH_ADDR = #{englishAddr,jdbcType=VARCHAR},",
          "DISCRT = #{discrt,jdbcType=DECIMAL},",
          "PANEL_STARTDT = #{panelStartdt,jdbcType=TIMESTAMP},",
          "PANEL_ENDDT = #{panelEnddt,jdbcType=TIMESTAMP},",
          "DIY_NOTE = #{diyNote,jdbcType=VARCHAR},",
          "SELFPAID_COLLECTION = #{selfpaidCollection,jdbcType=CHAR},",
          "CURRCD = #{currcd,jdbcType=VARCHAR},",
          "PAYMENT_MODE = #{paymentMode,jdbcType=VARCHAR},",
          "PAYMENT_FREQUENCY = #{paymentFrequency,jdbcType=VARCHAR},",
          "PAYMENT_DAY = #{paymentDay,jdbcType=DECIMAL},",
          "PROVIDER_CAT = #{providerCat,jdbcType=VARCHAR},",
          "COVERAGE_PROVIDED = #{coverageProvided,jdbcType=VARCHAR},",
          "PROVIDER_SPECIALITY = #{providerSpeciality,jdbcType=VARCHAR},",
          "PROVIDER_LEVEL = #{providerLevel,jdbcType=VARCHAR},",
          "NO_OF_BED = #{noOfBed,jdbcType=DECIMAL},",
          "MAPURL = #{mapurl,jdbcType=VARCHAR},",
          "FEE_CATG = #{feeCatg,jdbcType=VARCHAR},",
          "SOCIAL_MEDICAL_PANEL = #{socialMedicalPanel,jdbcType=CHAR},",
          "ISSUE_INVOICE_UPON_DISCHARGE = #{issueInvoiceUponDischarge,jdbcType=CHAR},",
          "PANEL_CONTRACTING = #{panelContracting,jdbcType=VARCHAR},",
          "BILL_CONSUMABLE = #{billConsumable,jdbcType=CHAR},",
          "GSTNO = #{gstno,jdbcType=VARCHAR},",
          "BANK_BRANCH_CODE = #{bankBranchCode,jdbcType=VARCHAR},",
          "PROVIDER_TYPE_DISP = #{providerTypeDisp,jdbcType=VARCHAR},",
          "WEBSITE = #{website,jdbcType=VARCHAR},",
          "CRCD = #{crcd,jdbcType=VARCHAR},",
          "SITEID = #{siteid,jdbcType=VARCHAR},",
          "INSERT_BY = #{insertBy,jdbcType=VARCHAR},",
          "INSERT_DATE = #{insertDate,jdbcType=TIMESTAMP},",
          "DIST = #{dist,jdbcType=VARCHAR},",
          "DOCUMENT_RECEIVCED_TYPE = #{documentReceivcedType,jdbcType=VARCHAR}",
        "where PROVIDER_CODE = #{providerCode,jdbcType=CHAR}"
    })
    int updateByPrimaryKey(Provider record);
}